1. Field of the Invention
The present invention relates to user interface techniques for reorganization of retrieved documents and, more particularly, to an intelligent hypermedia system that adapts dynamically to the user.
2. Discussion of the Related Art
Hypermedia systems that allow the user to navigate through large amounts of on-line information are known to be a promising method for controlling the overwhelming increase in information available to the user. While most paper documents lead the user down a rigid sequential path, hypertext documents provide users with a means to choose one of many different paths. Hypercards provide a useful access method to simple databases, and other hypermedia are also known.
Hypertext is a familiar term used to describe a particular form of organization and user presentation of information within a computer-implemented system and is a familiar element of the broader class of systems referred to herein as hypermedia. Hypermedia exploit the computer's ability to link together information from a wide variety of sources as a tool for exploring a particular topic. Such systems embrace large numbers of "data objects", which can be panels of text, titles, index entries or other data such as images, graphical tables, video or sound information, and so forth. The data object is said to reside at a "node" and may vary in size and type. A collection of such data objects is denominated a hypermedium. For data objects limited to text panels, that is, blocks of text data of varying size, the collection is referred to as a hypertext document.
Each data object is essentially self-contained but may contain references to other such objects or nodes. Such references are normally used in a hypertext document and are referred to as "links". A link is a user-activated control reference that causes the data object at the link target node to be displayed. Normally, hypertext systems are window-based and the newly displayed object appears in a new window. The new object or panel may, of course, contain additional links to other such panels. By following these links from panel to panel, the user "navigates" through and about the hypertext document. This scheme provides user-control over the order of information presentation and permits the user to select what is of interest and how to pursue a given topic.
Thus, a hypertext document essentially consists of a set of individual data objects or nodes interconnected by links. Each link is a relation between two nodes. The link relation includes data relating the location of the first panel where the link starts and the location of the second panel that is the target. Such location information may be stored in various forms, for example, it may be in the form of byte offsets indicating the number of bytes from the start of a file.
The set of link data for a given view of a hypermedium is known in the art as a link matrix and is denominated a link "profile" herein. Each such link profile contains a unique link vector or list for every node in the hypermedium. Each link vector is a list of the links between the corresponding "originating" node and other "target" nodes. The aggregate of such vectors, one for each node, makes up one link profile for the hypermedium.
In U.S. Pat. No. 4,982,344, Daniel S. Jordan discloses a data processing system that incorporates a method for accelerating the creation of such link vectors. Reference is made to Jordan's disclosure for a general understanding of object-oriented hypermedia systems. Reference is made to B. Shneiderman, Hypertext: Hands On!, Addison-Wesley Publ. Co., (1989), for a general background discussion of the hypertext concept. For a more introductory treatment, reference is made to J. Conklin, "Hypertext: An Introduction and Survey", IEEE Computer, Vol. 20, pp. 17-41, (1987).
Those familiar with the art are aware of the fundamental questions that still exist regarding how to direct the user to the information actually desired within a hypertext document. For example, consider the problem of writing a hypertext document for an unknown or potentially diverse audience. A link profile that might be useful for one type of user could be confusing to other users with different backgrounds or different objectives. Ideally, the hypertext document would adapt to different groups of users, providing different link profiles for different groups. But no effective adaptation methods were suggested in the art until now.
A related problem is the well-known trade-off between flexibility and complexity. In a hypertext document, the information (data object) at every panel node is associated with other panels throughout the document by means of a link profile containing many link vectors. The number of such associations from any given panel is potentially equal to the total number of such panels and, by allowing users to choose where to next jump, a greater number of link vectors provides more flexibility to an otherwise rigid process. However, as the number of link vectors grows, choosing where to next jump becomes a more complex problem for the user.
Compounding the problem of too many choices, are the other well-known hypertext issues such as becoming lost in hyperspace, not knowing what panel is targeted by a link before reaching it, and losing the organizational benefit of traditional sequential text. The Conklin reference cited above discusses these issues in detail. The negative effects of such problems can be avoided if the user is somehow guided to the correct link choices.
The existing art minimizes these problems by constraining the available choices in linking from one panel to another. This is done by providing only a few carefully chosen links to and from each panel. Thus, users are less likely to get lost or waste time exploring irrelevant nodes, but lack flexibility.
For example, it is possible that a user interested in a taco recipe may also be interested in trips to Mexico, food industry politics, the process of grinding corn by hand, and the Spanish Conquistadors. These and more topics can all be associated with tacos. Incorporating all such links in a hypertext document increases the system flexibility but also may confuse and frustrate the user.
One possible solution is to provide a great number of possible links, maximizing flexibility, while also discouraging certain links, effectively constraining the available choices. The user is then free to ignore system recommendation but may also follow them to minimize the risk of viewing irrelevant information. In the taco example, this could mean allowing the user to specify the slant or "task goal" desired in the review of tacos (e.g., the history of tacos, the market for tacos, taco recipes, etc.). However, nothing in the art suggests or teaches a suitable method for modifying a link profile in response to user-specified task objectives.
The typical hypertext link profile is predetermined according to the system designer's understanding of the typical user profile and is incorporated in the hypertext document with no provision for modification or weighted recommendation. The user model for a link profile is usually a simple matrix of ones and zeros relating each hypertext node or panel to all other such panels. Each link element is either zero (unlinked) or unity (linked), depending on the choices made by the author in view of the "connectedness" or relatedness between the panels.
Intelligent tutoring systems known in the art face a similar dynamic modification problem. Such systems must model not only the information to be taught to the user but also any mistakes likely to be made by the student user. Often, fairly complex rule-based expert systems are employed for this modelling. A wide range of sophisticated models are known in the art and reference is made to M. P. Anderson, et al., "Empirical User Modeling: Command Usage Analyses for Deriving Models of Users", Proceedings of the Human Factor Society--31st Annual Meeting, Vol. 31, pp. 41-45 (1987) for a discussion of the related art. Reference is also made to D. Carlson, et al., "HyperIntelligence: The Next Frontier", Communications of the ACM, Vol. 33, pp. 311-321 (1990). Reference is further made to R. Kass, et al., "The Role of User Models in Cooperative Interactive Systems", International Journal of Intelligent Systems, Vol. 4, pp. 81-112 (1989). Finally, reference is made to A. P. Norcio, et al., "Adaptive Human-Computer Interfaces: A Literature Survey and Perspective", IEEE Transactions on Systems, Man, and Cybernetics, Vol. 19, pp. 399-408 (1989). These references provide a general background of the user modelling and adaptive man-machine interface arts, which generally embrace models too complex for practical application to hypermedia systems.
Thus, there appears to be a need in the art for an adaptive user interface simple enough for effective use in hypermedia systems, permitting a hypertext document to be adapted to various users without losing the efficiency and flexibility associated with the hypertext technique. The related unresolved problems and deficiencies are keenly felt in the art and are solved by the present invention in the manner described below.